home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / editors / me31111 / ue311doc.zoo / doc / mouse.doc < prev    next >
Encoding:
Text File  |  1992-04-09  |  4.6 KB  |  117 lines

  1.             Mouse interface to microemacs
  2.             -----------------------------
  3.  
  4. Contents:
  5.     User Instructions
  6.     Customization instructions
  7.     Programming notes
  8.  
  9. User instructions:
  10.  
  11. - To make any window current, point at the mode line with the mouse
  12. cursor, and click the left button.
  13.  
  14. - To position the text cursor to any visible character, point at the
  15. character with the mouse cursor, and click the left button.
  16.  
  17. - To adjust window sizes, press the left button with the mouse cursor on
  18. a mode line, and release it at a new location for that mode line.  The
  19. windows on either side of the mode line will be adjusted accordingly.
  20.  
  21. - To scroll a window, press the left button with the mouse cursor on any
  22. line of text, and release it at a new location for that line of text. 
  23. The window will be scrolled accordingly.  Note you can't scroll beyond
  24. the beginning of the file, or across window boundaries.
  25.  
  26. - To define a region and put it in the killbuffer, press the right button
  27. at the beginning of the region, drag to the end, and release it.
  28.  
  29. - To kill a region, after defining a region, without moving the mouse,
  30. click the right button down and up again.
  31.  
  32. - To paste the contents of the killbuffer in to the current buffer, move
  33. the mouse to the location you wish to paste (which can not be at the end
  34. of the last mouse killed region) and click the right button down and up
  35. without moving it.  The killbuffer will be yanked into the current point.
  36.  
  37. - To resize a screen, click the left button in the bottom right corner
  38. of it and release it at the new position of the bottom right corner.
  39.  
  40. On the Atari-ST, you may access your DESK ACCESSORIES by moving the mouse
  41. cursor to the far right corner of the screen.  Emacs will remain
  42. inactive until all desk accessory windows are removed from the screen. 
  43. After using your accessories, you will need to type ^L to get the emacs
  44. display repainted.
  45.  
  46. When using a color monitor on the Atari ST, Emacs must be run in the
  47. resolution that was active at boot time in order for the mouse and desk
  48. accessories to run properly.  (You may switch to and from DENSE and HIGH
  49. without any problems.  This problem only exists with color monitors.)
  50.  
  51.  
  52. Customization instructions:
  53. ---------------------------
  54.  
  55. The mouse buttons (currently) appear to Emacs as keystrokes with the "MS"
  56. prefix. The keys are assigned as follows:
  57.  
  58.     MSa - Left button down
  59.     MSb - Left button up
  60.     MSc - center button down [Not available on Atari-ST/IBM-PC/AMIGA]
  61.     MSd - center button up            "
  62.     MSe - right button down
  63.     MSf - right button up
  64.     MSg - 4th button down     [Only on VMS workstations with tablet]
  65.     MSh - 4th button up            "
  66.  
  67.     MS0 - User selected "About microemacs" in the desk accessory
  68.         menu.
  69.     MS1 - Resize EMACS screen request
  70.  
  71. On systems that support shifted mouse buttons, the keys FNA-FNH are
  72. assigned to be the shifted versions of FNa-FNh. [Atari-ST/AMIGA]
  73.  
  74. On systems that support control of mouse buttons, the keys FM^A-FN^H are
  75. available. [Atari-ST/AMIGA]
  76.  
  77. The meta-prefix and ^X-prefix can be applied to mouse buttons.  Note,
  78. however, that it may be difficult for the user to apply a prefix to any
  79. button-up sequence.
  80.  
  81. When any mouse event occurs, Emacs sets internal variables to the row
  82. and column of the mouse cursor location.  These are used by the built-in
  83. mouse functions.
  84.  
  85. There are eight new built-in functions in emacs that are used to support
  86. the mouse.  They are listed here, along with their default binding:
  87.  
  88. mouse-move-down     MSa    Position mouse
  89. mouse-move-up        MSb    Drag text/modelines
  90. mouse-region-down    MSe    Select region begin/cut/paste
  91. mouse-region-up     MSf    Select region end
  92. mouse-resize-screen    MS1    resize the editing screen
  93.  
  94. Note that these functions compute double-clicks internally by comparing
  95. the location of the previous mouse click to the current mouse click. 
  96. There are no timers involved.
  97.  
  98. You may build more complicated functions in the editor extension
  99. language.  These would usually call "mouse-move-down" to determine what
  100. point was selected by the user.
  101.  
  102. Programming notes:
  103. ------------------
  104.  
  105. The terminal-specific "getc" routine is responsible for figuring out
  106. the mouse reports, and feeding them to the caller as the following
  107. sequence of bytes (in the MSDOS and Atari ST drivers):
  108.  
  109.     0, 0    Two Flag bytes that indicates following characters are a
  110.         mouse report
  111.     column    Column number of mouse cursor at time of mouse event
  112.     row    Row number of mouse cursor at time of mouse event
  113.     button    Suffix letter of event and given in customization
  114.         notes. (one of a-f,A-F,0, or 1).
  115.  
  116. There are decoded in INPUT.C into their 16-bit assignment.
  117.